#ifndef CVX_DECKLINK_INPUT_H
#define CVX_DECKLINK_INPUT_H 1

#include "afxcmn.h"
#include "DeckLinkAPI_h.h"
//#include "cvxDeckLinkInputCallback.h"
#include "atlstr.h"

//class COpitionsDlg;
//configure decklink input, from camera to PC
class CvxDeckLinkInput
{
public:
	CvxDeckLinkInput();
	~CvxDeckLinkInput();

	//flag == bmdVideoInputFlagDefault, or bmdVideoInputDualStream3D
	HRESULT SetFormat(BMDDisplayMode displayMode,	BMDPixelFormat pixelFormat, int flag );
	HRESULT StartStream(BMDDisplayMode displayMode,	BMDPixelFormat pixelFormat, int flag );
	void StopStream(void);
	int AvailableCount(void);

	CString GetModeName(void);
	HRESULT SetCallback(IDeckLinkInputCallback *pCallback);

private:
	IDeckLink      *m_pdeckLink;
	IDeckLinkInput *m_pinputCard;
};


#endif